Creating a New Helix QAC Project using the CLI
Creating a Helix QAC project on the command line is done using a single command. You are required to supply the location of the Helix QAC project (which is typically at the top level of the source code to be analyzed), and optionally three configuration files: an ACF, an RCF and a CCT. The command line will be in the following form (it has been spread over several lines, and had directory paths simplified, for reasons of clarity):
qacli project create -P <directory>
-C GNU_GCC-g++_12.2-x86_64-generic-linux-C++-c++14.cct
-R default-en_US.rcf
-A default.acf
This command line is now explained:
qacli
- The executable being invoked.project
- The command being invoked. The project command is used to manipulate Helix QAC projects.create
- Subcommand of the project command. This dictates that the operation to be conducted is the creation of a Helix QAC project. In the event that the project indicated with the-P
switch does not exist, it will be created. See also themodify
subcommand, which modifies an existing Helix QAC project.-P
- A switch on the admin subcommand. This switch dictates that the following text is the directory within which the new Helix QAC project is to be created. The project does not have an explicit name: it is referred to by the name of the directory in which it is located./<path_to_project_location>
- The path to the project to be created.-C GNU_GCC-g++_12.2-x86_64-generic-linux-C++-c++14.cct
- An optional switch that indicates the location of the CCT. The Compiler Compatibility Template file describes to the parser the key attributes of the compiler. If not specified then it will default to "Helix_Generic_C.cct
" & "Helix_Generic_C++.cct
" i.e. general purpose CCTs not tied to a specific compiler.-R default-en_US.rcf
- An optional switch that indicates the location of the RCF. The Rule Configuration File describes which checks are enabled in the parsers. If not specified it will default to "default-<locale>.rcf
", so for English based systems it will be "default-en_US.rcf
" and Japanese based systems it will be "default-ja_JP.rcf
". This default version enables most checks and is probably excessive for production use.-A default.acf
- An optional switch that indicates the location of the ACF. The Analysis Configuration File describes which and how each parser is configured. If not specified it will default to "default.acf
" (i.e. both C and C++ parsers are enabled).
If only base filenames are given it is assumed they are part of the standard installation and they will be retrieved from the installation folder. You can also specify full absolute filenames if needed.
This is clearly significantly more prone to user error than creating Helix QAC projects with the GUI, as
described in Creating a New Helix QAC Project, and also requires you to know exactly which configuration files to use. The GUI
presents lists of available configuration files to select from, and you are therefore strongly encouraged to make
use of this if you are new to the software.